diff --git a/django/contrib/admin/widgets.py b/django/contrib/admin/widgets.py
index aeb74773ac..11699a4795 100644
--- a/django/contrib/admin/widgets.py
+++ b/django/contrib/admin/widgets.py
@@ -363,7 +363,7 @@ class AdminUUIDInputWidget(forms.TextInput):
 # Mapping of lowercase language codes [returned by Django's get_language()] to
 # language codes supported by select2.
 # See django/contrib/admin/static/admin/js/vendor/select2/i18n/*
-SELECT2_TRANSLATIONS = {x.lower(): x for x in [
+SELECT2_TRANSLATIONS = {x.lower() if '-' not in x else x: x for x in [
     'ar', 'az', 'bg', 'ca', 'cs', 'da', 'de', 'el', 'en', 'es', 'et',
     'eu', 'fa', 'fi', 'fr', 'gl', 'he', 'hi', 'hr', 'hu', 'id', 'is',
     'it', 'ja', 'km', 'ko', 'lt', 'lv', 'mk', 'ms', 'nb', 'nl', 'pl',
